#ifndef MOUSELISTENER_H_
#define MOUSELISTENER_H_

class MouseListener {
public:
	//! Called when Mouse button is pressed
	virtual void OnMouseDown(int button, int x, int y){};

	//! Called when Mouse button is released
	virtual void OnMouseUp(int button, int x, int y){};

	//! Called when Mouse is moved (without pressing any button)
	virtual void OnMouseMove(int x, int y){};

	//! Called while Left Mouse button is pressed.
	virtual void OnLeftMouseDrag(int x, int y){};

	//! Called when mouse wheel is used
	virtual void OnMouseWheel(int nWheelNumber, int nDirection, int x, int y){};

	virtual ~MouseListener(){};
};


#endif /* MOUSELISTENER_H_ */
